<?php

require_once 'Framework/Controller/Action.php';

/**
 * Демонстрация функциональности сайта
 *
 */
class IndexController extends Framework_Controller_Action
{
	private $_ua;
	private $_ip;
	
    public function init()
    {
    	$this->_ua = $this->getRequest()->getServer('HTTP_USER_AGENT');
		$this->_ip = $this->getRequest()->getServer('REMOTE_ADDR');
		
        $this->view->redirect = '/user/';
        // Определяем кто пришел (гость|левый чел)
        if ($this->session->get('guest_logged_in')) {
            $this->view->guest = 1; 
        } else if (!$this->session->get('logged_in')) {
            $this->view->not_auth = 1;
        }
        echo $this->getRequest()->getQuery('a'); // wtf?
        if ($this->session->get('user_id'))
        {
        	$this->_user = new User_Self($this->session->get('user_id'));
        	$this->view->messages_count = $this->_user->getNewMessagesCount();
        }
    }
    
    /**
     * Главная
     *
     */
    public function indexAction()
    {
    	Stat_Access::setAccess(0,$this->_ua,$this->_ip); // 0 - main page
        // Голосование
        $voting_data = User_Another::getHomeUser();
        $this->view->voting_data = $voting_data; 
        
        $this->render();
    }
    
    /**
     * Список комнат
     *
     */
    public function roomsAction()
    {
        //Зачищаем гостя в комнатах
        if ($guest_id = $this->session->get('guest_id')) {
            Room::clean($guest_id);
        }
        // Зачищаем зомби
        Room::cleanOnline();
        
        $open_rooms = Room::getOpenRooms();
        $this->view->rooms = $open_rooms;
        
        $this->render();
    }
    
    /**
     * top10
     *
     */
    public function topAction()
    {
        $top = User_Another::getTopUsers();
        $this->view->top = $top;

        $this->render();
    }
    
    
    /**
     * Помощь (просто страничка)
     *
     */
    public function infoAction()
    {
        $this->render();
    }
    
    /* хелп (просто страничка)
     *
     */
    public function helpAction()
    {
        $this->render();
    }
    
    /**
     * Terms and Conditions
     *
     */
    public function termsAction()
    {
        $this->render();
    }
    
    /**
     * Сюда перебрасываем в случае ошибок
     *
     */
    public function errorAction()
    {
        $this->render();
    }
}